/**
 * Created by c.y on 2018/3/20
 * Mutation 事件类型
 * 1. Mutation 需遵守 Vue 的响应规则
 * 2. 使用常量替代 Mutation 事件类型
 * 3. Mutation 必须是同步函数
 * 具体的配置可见 https://vuex.vuejs.org/zh-cn/mutations.html
 */

import {
    UPDATE_LOADING,
    UPDATE_DIRECTION,
    UPDATE_CHANNEL_NO,
    UPDATE_SESSION_ID,
    UPDATE_ACTIVE_TAB,
    UPDATE_NOTICE_ARR,
    UPDATE_PAGE_ACCESS_RECORD,
    UPDATE_APP_STYLE
} from './mutation-types';

export default {
    // 更新loading
    [UPDATE_LOADING](state, { isLoading }) {
        state.isLoading = isLoading;
    },
    // 页面切换动画
    [UPDATE_DIRECTION](state, { direction }) {
        state.direction = direction;
    },
    // 更新渠道号
    [UPDATE_CHANNEL_NO](state, { cn }) {
        state.cn = cn;
    },
    // 更新访问记录
    [UPDATE_PAGE_ACCESS_RECORD](state, { pageName }) {
        state.pageRecode.unshift(
              pageName);
    },
    // 更新sessionId
    [UPDATE_SESSION_ID](state,{ sid }) {
        state.sid = sid;
    },
    [UPDATE_ACTIVE_TAB](state, { loanActiveTab }) {
        state.loanActiveTab = loanActiveTab;
    },
    [UPDATE_NOTICE_ARR](state, { noticeIdArr }) {
        state.noticeIdArr = JSON.parse(noticeIdArr);
    },
    // 更新app
    [UPDATE_APP_STYLE](state, { appScrollStyle }) {
        state.appScrollStyle = appScrollStyle;
    }
};
